package com.me.filter;

import com.me.model.User;

import javax.servlet.*;
import javax.servlet.annotation.WebFilter;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;

@WebFilter(filterName = "AdminFilter", urlPatterns = "/admin/*")
public class AdminFilter implements Filter {
	public void destroy() {
	}
	
	public void doFilter(ServletRequest req, ServletResponse resp, FilterChain chain) throws ServletException, IOException {
		User u = (User) ((HttpServletRequest) req).getSession().getAttribute("user");
		if ((u != null && u.isAdmin())|| !((HttpServletRequest)req).getRequestURL().toString().endsWith(".jsp")) {
			chain.doFilter(req, resp);
		} else {
			((HttpServletResponse) resp).sendRedirect("/user/login.jsp");
		}
	}
	
	public void init(FilterConfig config) {
		
	}
	
}
